package com.jsb.laundry.model.shops;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.jsb.laundry.common.response.ResultPage;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class FundManageDetailVo implements Serializable {

    private static final long serialVersionUID = 721700696610489657L;

    private String uid;
    private int pageSize = 10;
    private int pageNum = 1;
    private long total;

    /**
     * 0: 佣金账户
     * 1: 理约金账户
     */
    private String accountFlag;
    /**
     * 0:已结算
     * 1：待结算
     * 2: 理约金账户传值
     */
    private String settleFlag;
    private Date startTime;
    private String endTime;

    @ApiModelProperty(value = "总收入")
    private String incomeTotal;
    @ApiModelProperty(value = "总收入笔数")
    private String incomeNum;

    @ApiModelProperty(value = "已结算")
    private String alreadyTotal;
    @ApiModelProperty(value = "已结算笔数")
    private String alreadyNum;
    @ApiModelProperty(value = "待结算")
    private String waitTotal;
    @ApiModelProperty(value = "待结算笔数")
    private String waitNum;

    private List<SettleInfo> settleInfoList;


    @Data
    @NoArgsConstructor
    @AllArgsConstructor
    @Accessors(chain = true)
    public static class SettleInfo {
        @ApiModelProperty(value = "订单id")
        private String orderId;

        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
        @ApiModelProperty(value = "入账时间")
        private Date inTime;

        @ApiModelProperty(value = "账务类型")
        private String accountType;

        @ApiModelProperty(value = "金额")
        private String money;

        @ApiModelProperty(value = "业务描述")
        private String serviceDesc;

    }



}
